package com.xbongbong.paas.domain.dao;

import com.xbongbong.paas.domain.entity.PaasFormRefEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Map;

/**
 * @author: 汪腾伟
 * @date: Created in 2021/8/18 18:50
 * @description： 表单关系表,目前主要是存产品子表单与父业务的关系
 */
@Repository
@Mapper
public interface PaasFormRefDao {

    /**
     * 获取产品子表单的父表单信息
     *
     * @param formId 产品子表单的formId
     * @param corpid 公司id
     * @return
     */
    PaasFormRefEntity getMainFormIdByFormId(@Param("formId") Long formId, @Param("corpid") String corpid);

    /**
     * 查询产品子表单的父表单信息
     *
     * @param param
     * @return
     */
    List<PaasFormRefEntity> findEntitys(@Param("param") Map<String, Object> param);

    /**
     * 批量插入实体
     * @param list
     * @return 返回数据的列表
     */
    Integer insertBatch(@Param("list")List<PaasFormRefEntity> list);

    /**
     * 根据公司id和主业务的formId获取关联表信息
     *
     * @param mainFormId 主业务的formId
     * @param corpid 公司id
     * @return
     */
    List<PaasFormRefEntity> getListByMainFormId(@Param("mainFormId")Long mainFormId, @Param("corpid")String corpid);

    /**
     * 批量删除
     * @param list 主键id集合
     * @param corpid
     * @author xingxing.xiao
     */
    Integer deleteBatch(@Param("list") List<Long> list, @Param("corpid")String corpid);
}
